iT邦幫忙

2021 iThome 鐵人賽

DAY 4
0
Software Development

Gradle 通靈術系列 第 4

第四天:在 Linux 上安裝 Gradle

  • 分享至 

  • xImage
  •  

接下來要跟大家談談如何在三大主流作業系統上安裝 Gradle,讀者可以依據自己習慣使用的作業系統跟著文章裡的步驟把環境裝起來。首先我們從 Linux 作業系統開始:

環境需求

在文章撰寫的當下,Gradle 的最新版本為 7.2,在這個系列裡都會用這個版本做示範。Gradle 本身是用 Java/Groovy 寫的,因此執行環境裡需要 JDK。請先檢查一下作業系統裡是否有 JDK:

$ java -version

安裝 SDKMAN

若作業系統裡還沒有 JDK,那我會推薦大家使用 SDKMAN 來安裝 JDK,後續還可以再用它安裝 Gradle,兩個願望一次滿足!

SDKMAN 是一個 SDK 管理器,可以協助我們安裝幾乎所有 JVM 開發者會需要用到的 SDK,像是 JDK、Kotlin Compiler、Gradle…等,若有更新時還可以一鍵下載,需要安裝多個不同版本的 JDK 也沒問題,可以透過指令去切換環境裡的 JDK,甚至還可以幫我們更新 PATH 設定,非常方便!

安裝 SDKMAN 很簡單,只要將官網上的指令貼在終端機並執行即可:

$ curl -s "https://get.sdkman.io" | bash

SDKMAN 是用 Bash Script 實作,沒有相依其他工具,安裝起來完全無痛。安裝好後重新載入就可以用 $ sdk version 指令來驗證安裝是否成功。

用 SDKMAN 安裝 JDK

緊接著安裝 JDK,首先要取得 SDKMAN 可安裝 JDK 的 Identifier,先用 list 指令查詢:

$ sdk list java # 取得所有 JDK 清單
================================================================================
Available Java Versions
================================================================================
 Vendor        | Use | Version      | Dist    | Status     | Identifier
--------------------------------------------------------------------------------
 AdoptOpenJDK  |     | 16.0.1.hs    | adpt    |            | 16.0.1.hs-adpt
               |     | 11.0.11.hs   | adpt    |            | 11.0.11.hs-adpt
               |     | 8.0.292.hs   | adpt    |            | 8.0.292.hs-adpt
 Corretto      |     | 16.0.2.7.1   | amzn    |            | 16.0.2.7.1-amzn
               |     | 11.0.12.7.1  | amzn    |            | 11.0.12.7.1-amzn
               |     | 8.302.08.1   | amzn    |            | 8.302.08.1-amzn
 GraalVM       |     | 21.2.0.r16   | grl     |            | 21.2.0.r16-grl
               |     | 21.2.0.r11   | grl     |            | 21.2.0.r11-grl
               |     | 21.2.0.r8    | grl     |            | 21.2.0.r8-grl
# 為節省版面部份輸出已被精簡

從上面的畫面可以看到,每一個版本對應到的 Identifier 都不一樣。假設我想安裝 AdoptOpenJDK16.0.1.hs 這個版本,對應到的 Identifier 就是 16.0.1.hs-adpt。把這個字串記下來,再用 install 指令安裝:

$ sdk install java 16.0.1.hs-adpt

SDKMAN 就會到網路上把 AdoptOpenJDK 16.0.1.hs 抓下來安裝,也會將這個版本的 JDK 做為系統預設 Shell 環境的 JDK。若之後有需要也可以用 use 指令來切換 JDK 版本:

$ sdk use java java 16.0.1.hs-adpt

用 SDKMAN 安裝 Gradle

安裝好 JDK 後的下一步就來裝 Gradle,一樣先用 list 指令查詢 Gradle 各版本的 Identifier:

$ sdk list gradle # 取得 Gradle 版本清單
================================================================================
Available Gradle Versions
================================================================================
     7.2                 6.1                 4.5.1               2.8
     7.2-rc-3            6.0.1               4.5                 2.7
     7.2-rc-2            6.0                 4.4.1               2.6
     7.2-rc-1            5.6.4               4.4                 2.5
     7.1.1               5.6.3               4.3.1               2.4
     7.1                 5.6.2               4.3                 2.3
     7.0.2               5.6.1               4.2.1               2.2.1
     7.0.1               5.6                 4.2                 2.2
     7.0                 5.5.1               4.1                 2.1
# 為節省版面部份輸出已被精簡

我們要裝的版本是 7.2,使用 install 指令進行安裝:

$ sdk install gradle 7.2

安裝好後重新載入就可以用 $ gradle --version 指令來驗證安裝是否成功:

------------------------------------------------------------
Gradle 7.2
------------------------------------------------------------

Build time:   2021-08-17 09:59:03 UTC
Revision:     a773786b58bb28710e3dc96c4d1a7063628952ad

Kotlin:       1.5.21
Groovy:       3.0.8
Ant:          Apache Ant(TM) version 1.10.9 compiled on September 27 2020
JVM:          16.0.1 (AdoptOpenJDK 16.0.1+9)
OS:           Linux 5.10.16.3-microsoft-standard-WSL2 amd64

Gradle 會把系統裡各個工具的版本資訊都列出來供我們確認,若能看到這個畫面就表示安裝成功囉!

適用情境

假如您習慣使用 Linux 作業系統(比方說 Ubuntu)做開發機,因開發需求需要安裝多個版本的 JDK,不排斥在工作機上安裝 SDK 管理工具的話,這個方式就很適合您!假如您希望可以隔離各種開發環境,或是您只是因為要維護現有專案,那您可以參考之後會提到的 Docker 或 Gradle Wrapper 等安裝方式。

參考資料


上一篇
第三天:Gradle 的 5 個重要觀念
下一篇
第五天:在 macOS 上安裝 Gradle
系列文
Gradle 通靈術24
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言